home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / umich / telecomm / steno210.lzh / PROGRAM / HYPRDEFS.H next >
Encoding:
C/C++ Source or Header  |  1994-10-10  |  4.6 KB  |  122 lines

  1. /*
  2.  *    This header file contains fields related to STeno's capability
  3.  *  to interact with an outside application.
  4.  *
  5.  *  Copyright © 1990-1993 Strata Software, JMG software.
  6.  *  Copyright © 1994, Cysco Software
  7.  */
  8.  
  9. /***************************************************************************
  10.  
  11. USE OF AES MESSAGES:
  12.  
  13. The STeno interfaces uses a "standard" of sending AES messages that has
  14. been in use by JMG Software for a few years, a modification of the "Tom
  15. Hudson Standard" suggested in Start magazine a long time ago.
  16.  
  17. The AES message packet is defined as follows:
  18.  
  19.     word 0 :    High Byte :     Application ID byte
  20.                 Low Byte  :        Message ID ("type")
  21.                 
  22.     word 1 :    ap_id of source process
  23.     
  24.     word 2 :    (additional length of message if any)
  25.     
  26.     word 3 :    Command number or flag, if any
  27.     
  28.     word 4 :    no use defined
  29.     
  30.     word 5 :    no use defined
  31.     
  32.     word 6 & 7 :    Pointer to data structure (if used)
  33.  
  34. The low byte of word 0 indicates the message ID, or "type", showing the
  35. purpose of the message (used types are described below).  In all cases, a
  36. reply to a specific message (a handshake, for instance) will use the same
  37. type byte with the high bit set.  For instance, a reply to a message type
  38. of 0x0F would be 0x8F.
  39. **************************************************************************/
  40.  
  41. #define ED_HELLO    0xED00    /* Sent by Application to the STeno when starting. */
  42.  
  43. #define ED_REPLY    0xED80    /* Acknowledge sent by STeno to Application after 
  44.                              * ED_HELLO.  Word 3 contains STeno's version 
  45.                              * number (ie 0x0210), or 0 if STeno is already
  46.                              * in use by another application.
  47.                              */
  48.  
  49. /* The following messages are all sent by the Application to STeno: */
  50.  
  51. #define ED_OPEN        0xED01    /* Open up the STeno window */
  52.  
  53. #define ED_BYE        0xED02    /* Sent by the Application right before it exits. */
  54.  
  55. #define ED_LOADF    0xED10    /* The Application would like STeno to load a file.
  56.                              * Word 6 & 7 contain pointer to full filename.
  57.                              * Word 4 & 5 contain a LONG value of the line # to
  58.                              * position to the top of the window.  If 0, then 
  59.                              * start-of-file, if > # of lines, then end-of-file.
  60.                              */
  61.  
  62. #define ED_NEW        0xED11                             /* The Application would like STeno to "New", 
  63.                                                      * clearing buffer and filename.
  64.                                                       */
  65.  
  66. #define ED_SAVEF    0xED12                            /* Please save buffer to filename in word 6 & 7; 
  67.                                                      * if word 6 & 7 = NULL, use
  68.                                                      * current name (or "UNTITLED.TXT" if no current name).
  69.                                                      * word 3 TRUE = Append OK, FALSE = Replace only.
  70.                                                      */
  71.  
  72. #define ED_CUT        0xED14                            /* Application triggering the "CUT BLOCK" command. */
  73.  
  74. #define ED_COPY        0xED15                            /* Application triggering the "COPY BLOCK" command. */
  75.  
  76. #define ED_PASTE    0xED16                            /* Application triggering the "PASTE BLOCK" command. */
  77.  
  78. #define ED_DELETE    0xED17                            /* Application triggering the "DELETE BLOCK" command. */
  79.  
  80. #define ED_FIND        0xED18                            /* Trigger the FIND command;
  81.                                                      * search string pointed by word 6 & 7.
  82.                                                      * word 3 contain CASE SENSITIVE flag
  83.                                                      * If NULL, trigger the FINDNEXT command
  84.                                                      */
  85.  
  86. #define ED_CHANGE    0xED19                            /* Trigger CHANGE command; 
  87.                                                      * word 4 & 5 point to the search 
  88.                                                      * word 6 & 7 point to the replace
  89.                                                      * word 3 contain CASE SENSITIVE flag
  90.                                                      */
  91.  
  92. #define ED_PRINT    0xED1A                            /* Trigger PRINT command. */
  93.  
  94. #define ED_LINE        0xED1D                            /* Words 4/5 contains the line # to position to. */
  95.  
  96. #define ED_READ        0xED1E                            /* Word 3 contains the READ ONLY flag, TRUE or FALSE. */
  97.  
  98. #define ED_INQINF    0xED1F                            /* Will return information about the current file. */
  99.                                                     /* Returns message ED_INQINF | 0x8000
  100.                                                      * Word 3 contains Modified Flag
  101.                                                      * Word 6 & 7 point to full filename
  102.                                                      */
  103.  
  104. /* The following messages would be sent by STeno to the Application: */
  105.  
  106. #define ED_DCLICK    0xED30                            /* A double-click to select a word was done. Word 6 & 7 point to the start of * 
  107.                                                      * the block. */
  108.  
  109. #define    ED_SELECT    0xED31                            /* A block was selected with the mouse or keyboard. Word 6 & 7 point to the *
  110.                                                      * start of the block. */
  111.  
  112. #define ED_MLOAD    0xED40                            /* OPEN was selected from Menu.  Word 6 & 7 contain the filename. */
  113.  
  114. #define ED_MNEW        0xED41                            /* New was selected from the Menu. */
  115.  
  116. #define ED_MSAVE    0xED42                            /* SAVE or SAVE AS was selected from Menu. Word 6 & 7 point to filename. */
  117.  
  118. #define ED_CLOSE    0xED50                            /* Window close selected */
  119.  
  120. #define ED_UNDOK    0xED51                            /* UNDO key pressed */
  121.  
  122.